package cn.ilikes.tools.nosql.jpa.query.sql.element;

public class Properties implements Element {

	public class Between {
		private Object start;

		private Object end;

		public Between(Object start, Object end) {
			super();
			this.start = start;
			this.end = end;
		}

		public Between() {
			super();

		}

		public Object getStart() {
			return start;
		}

		public Object getEnd() {
			return end;
		}

		public void setStart(Object start) {
			this.start = start;
		}

		public void setEnd(Object end) {
			this.end = end;
		}

	}

	public enum Type {
		property, value
	}

	private Type type;

	private Class<?> valueType;

	//:e
	private Object value;

	//	//sql  s=:e
	//	private Object variable;

	public Properties(Type type, Class<?> valueType, Object value) {
		super();
		this.type = type;
		this.value = value;
		this.valueType = valueType;
	}

	public Properties(Type type) {
		super();
		this.type = type;
	}

	public Type getType() {
		return type;
	}

	public Object getValue() {
		return value;
	}

	public void setType(Type type) {
		this.type = type;
	}

	public void setValue(Object value) {
		this.value = value;
	}

	//	public Object getVariable() {
	//		return variable;
	//	}
	//
	//	public void setVariable(Object variable) {
	//		this.variable = variable;
	//	}

	public Class<?> getValueType() {
		return valueType;
	}

	public void setValueType(Class<?> valueType) {
		this.valueType = valueType;
	}

}
